import axios from "./config";

import { CancelToken } from "./config";
// console.log(CancelToken);

//定义请求接口

/**
 *
 * @param {String} username 用户名
 * @param {String} password 用户密码
 */
export const loginApi = (username, password) =>
  axios.post("/users/login", {
    username,
    password,
  });

//获取验证码
export const getCaptchaApi = () => axios.get("/users/getCaptcha");

//校验验证码
export const verifyCaptcha = (captcha = "") =>
  axios.get("/users/verifyCaptcha", {
    params: {
      captcha,
    },
  });

//获取登录日志
/**
 *
 * @param {String} page 第几页
 * @param {String} count 每页的数量
 * @returns {Promise} 返回一个Promise
 */
export const getLoginLogApi = (componentInstance, page = 1, count = 15) =>
  axios.get("/getloginlog", {
    params: {
      page,
      count,
    },
  });

//获取微信二维码地址
export const getQrcodeUrlApi = (sid) => axios.get("/users/getQecode", {
  params: {
    sid
  }
});

//微信登录
export const wechatLoginApi = (wechatCode) =>
  axios.get("/users/wechatLogin", {
    params: {
      wechatCode,
    },
  });

//获取权限路由
export const getMenuListApi = () => axios.get("/permission/getMenuList")


//获取学院列表
/**
 * 
 * @param {Number} page 页码
 * @param {Number} count 每页显示的数量
 * @param {String} classes 班级
 * @returns {Promise} 返回一个promise类型的方法
 */
export const getStuListApi = (page = 1, count = 10, classes = "") => axios.get("/students/getstulist", {
  params: {
    page,
    count,
    class: classes
  }
})

//增加学员信息
export const addStuApi = (data) => axios.post("/students/addstu", data)

//编辑学员信息
export const updateStuApi = (data) => axios.post("/students/updatestu", data)

//删除学员信息
export const delStuApi = (sId) => axios.get("/students/delstu", {
  params: {
    sId
  }
})

//获取班级列表
export const getClassesApi = () => axios.get("/students/getclasses")

//搜索学员
export const searchStuApi = (page, key, count) => {
  //短路运算
  count = count || 10;
    key = key || "";
    page = page || 1;
  return axios.get("/students/searchstu", {
    params: {
      page,
      count,
      key
    }
  })
}